<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
            "http://www.w3.org/TR/REC-html40/loose.dtd">
<HTML>
<HEAD>



<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<META name="GENERATOR" content="hevea 1.08">
<LINK rel="stylesheet" type="text/css" href="umsroot.css">
<TITLE>
Advanced Control Features
</TITLE>
</HEAD>
<BODY >
<A HREF="umsroot093.html"><IMG SRC ="previous_motif.gif" ALT="Previous"></A>
<A HREF="index.html"><IMG SRC ="contents_motif.gif" ALT="Up"></A>
<A HREF="umsroot117.html"><IMG SRC ="next_motif.gif" ALT="Next"></A>
<HR>

<H1 CLASS="chapter"><A NAME="htoc230">Chapter&nbsp;17</A>&nbsp;&nbsp;Advanced Control Features</H1>

<A NAME="suspensions"></A><BR>
<BR>
<UL>
<LI><A HREF="umsroot105.html">Introduction</A>
<LI><A HREF="umsroot106.html">Concepts</A>
<UL>
<LI><A HREF="umsroot106.html#toc128">The Structured Resolvent</A>
<LI><A HREF="umsroot106.html#toc129">Floundering</A>
</UL>
<LI><A HREF="umsroot107.html">Suspending Built-Ins and the Suspend-Library</A>
<LI><A HREF="umsroot108.html">Development System Support</A>
<LI><A HREF="umsroot109.html">Declarative Suspension: Delay Clauses</A>
<LI><A HREF="umsroot110.html">Explicit supension with suspend/3</A>
<LI><A HREF="umsroot111.html">Waking conditions</A>
<UL>
<LI><A HREF="umsroot111.html#toc130">Standard Waking Conditions on Variables</A>
<LI><A HREF="umsroot111.html#toc131">Library-defined Waking Conditions on Variables</A>
<LI><A HREF="umsroot111.html#toc132">Global Symbolic Waking Conditions: Triggers</A>
</UL>
<LI><A HREF="umsroot112.html">Lower-level Primitives</A>
<UL>
<LI><A HREF="umsroot112.html#toc133">Suspensions and Suspension Lists</A>
<LI><A HREF="umsroot112.html#toc134">Creating Suspended Goals</A>
<LI><A HREF="umsroot112.html#toc135">Operations on Suspensions</A>
<LI><A HREF="umsroot112.html#toc136">Examining the Resolvent</A>
<LI><A HREF="umsroot112.html#toc137">Attaching Suspensions to Variables</A>
<LI><A HREF="umsroot112.html#toc138">User-defined Suspension Lists</A>
<LI><A HREF="umsroot112.html#toc139">Attaching Suspensions to Global Triggers</A>
<LI><A HREF="umsroot112.html#toc140">Scheduling Suspensions for Waking</A>
</UL>
<LI><A HREF="umsroot113.html">Demon Predicates</A>
<LI><A HREF="umsroot114.html">More about Priorities</A>
<UL>
<LI><A HREF="umsroot114.html#toc141">Changing Priority Explicitly</A>
<LI><A HREF="umsroot114.html#toc142">Choice of Priorities</A>
</UL>
<LI><A HREF="umsroot115.html">Details of the Execution Mechanism</A>
<UL>
<LI><A HREF="umsroot115.html#toc143">Particularities of Waking by Unification</A>
<LI><A HREF="umsroot115.html#toc144">Cuts and Suspended Goals</A>
</UL>
<LI><A HREF="umsroot116.html">Simulating other System's Delay-Primitives</A>
</UL>

<BR>
<BR>
<HR WIDTH="50%" SIZE=1><DL CLASS="list"><DT CLASS="dt-list"><A NAME="note26" HREF="umsroot107.html#text26"><FONT SIZE=5>1</FONT></A><DD CLASS="dd-list">
Note that more powerful versions of these constraints exist in other
solvers such as the interval solver lib(ic).

<DT CLASS="dt-list"><A NAME="note27" HREF="umsroot110.html#text27"><FONT SIZE=5>2</FONT></A><DD CLASS="dd-list">
suspend/3 is itself based on the lower-level primitives make_suspension/3
and insert_suspension/4, which are described below.
<DT CLASS="dt-list"><A NAME="note28" HREF="umsroot111.html#text28"><FONT SIZE=5>3</FONT></A><DD CLASS="dd-list">Examples of such libraries are branch_and_bound,
changeset, chr/ech, propia, repair, visualisation.
<DT CLASS="dt-list"><A NAME="note29" HREF="umsroot111.html#text29"><FONT SIZE=5>4</FONT></A><DD CLASS="dd-list">more precisely,
variables which have an ic-attribute, see chapter <A HREF="umsroot093.html#attrvars">16</A>.
<DT CLASS="dt-list"><A NAME="note30" HREF="umsroot112.html#text30"><FONT SIZE=5>5</FONT></A><DD CLASS="dd-list">This mechanism may be reconsidered in a future release
</DL>
<HR>
<A HREF="umsroot093.html"><IMG SRC ="previous_motif.gif" ALT="Previous"></A>
<A HREF="index.html"><IMG SRC ="contents_motif.gif" ALT="Up"></A>
<A HREF="umsroot117.html"><IMG SRC ="next_motif.gif" ALT="Next"></A>
</BODY>
</HTML>
